package com.yehebl.handler.manager;

import java.util.HashMap;
import java.util.Map;

import com.esotericsoftware.reflectasm.MethodAccess;

/**
 * 反射对象操作统一缓存类
 * @author tzd
 *
 */
public class MethodAccessManager {
	private static Map<Class<?>,MethodAccess>  map=new HashMap<Class<?>,MethodAccess>();
	
	/**
	 * 获取反射对象
	 * @param clazz
	 * @return
	 */
	public static MethodAccess get(Class<?> clazz){
		MethodAccess ma=null;
		ma=map.get(clazz);
		if(ma==null){
			ma=MethodAccess.get(clazz);
			map.put(clazz, ma);
		}
		return ma;
	}
	
	
	/**
	 * 保存反射对象到缓存
	 * @param clazz
	 */
	public static void set(Class<?> clazz){
		map.put(clazz, MethodAccess.get(clazz));
	}
}
